"use strict";
/*
 * @Description: Be careful what you wish for
 * @Autor: zzzzzed
 * @Date: 2023-11-27 19:15:11
 * @LastEditors: zzzzzed
 */
// 给定一个整数 n，计算所有小于等于 n 的非负整数中数字 1 出现的个数。
// 示例 1：
// 输入：n = 13
// 输出：6
// 示例 2：
// 输入：n = 0
// 输出：0
function countDigitOne(n) {
    let k = 1;
    let res = 0;
    for (let i = 0; k <= n; i++) {
        res += (Math.floor(n / (k * 10)) * k + Math.min(Math.max(n % (k * 10) - k + 1, 0), k));
        k *= 10;
    }
    return res;
}
;
// 11110  ===> 
console.log("====> ", countDigitOne(13));
console.log("====> ", countDigitOne(0));
